package G.二叉搜索树;

public class _530_二叉搜索树的最小绝对差 {
    /**
     * 自解：利用二叉搜索树的中序遍历性质 结果要求最小值 只能是中序结果两个相邻的
     * 进行中序遍历 temp存储的上一个节点数值 rootd的value和temp相减 与ans做对比 如果小就替换ans
     *
     * 函数返回的是ANS
     * @param root
     * @return
     */

    int temp= Integer.MAX_VALUE;
    int ans = Integer.MAX_VALUE;
    public int getMinimumDifference(TreeNode root) {

        getAns(root);
        return ans;

    }

    public void getAns(TreeNode node){
        if (node ==null){
            return ;
        }
        getAns(node.left);

        ans = ans<Math.abs(node.val-temp)?ans:Math.abs(node.val-temp);
        temp = node.val;

        getAns(node.right);

    }
}
